//
//  TestSwiftUIView.swift
//  ptbuy
//
//  Created by MyMac on 2024/11/18.
//

import SwiftUI

struct TestSwiftUIView: View {
    
    @State private var isShowingAlert = false
    @State private var isWinShowingAlert = false
    @State private var showAlert = false           // 控制弹框的显示
    @State private var showingSaveProductSheet = false           // 控制弹框的显示
    
    var body: some View {

        
        VStack {
            Button("Show Download Alert") {
                isShowingAlert = true
            }
            .padding()
            .alert(isPresented: $isShowingAlert) {
                Alert(title: Text("Download Alert"), message: Text("Do you want to start the download?"), primaryButton: .default(Text("Start")) {
                    // 在此处你可以处理启动下载
                    isShowingAlert = false
                    withAnimation{
                        isWinShowingAlert.toggle()
                    }
                }, secondaryButton: .cancel())
            }.alert("下载成功",isPresented:$showAlert){
                Button("关闭", role: .cancel) {
                    showAlert = false
                }
            }
            
       
        }.overlay(
            isWinShowingAlert ?  DownloadAlertView(isWinShowingAlert: $isWinShowingAlert,showAlert:$showAlert) : nil
        )
        .padding()
    }
}
    
//    @State private var isLoading = false           // 异步操作是否正在进行
//        @State private var progress: Double = 0.0      // 进度
//        @State private var showAlert = false           // 控制弹框的显示
//        
//        var body: some View {
//            VStack {
//                // 显示加载进度
//                ProgressView("Loading", value: progress, total: 100)
//                    .progressViewStyle(LinearProgressViewStyle())
//                    .padding()
//                
//                // 按钮触发异步任务
//                Button(action: {
//                    Task {
//                        await performAsyncTask(progress: { progress in
//                            self.progress = progress
//                        }, showAlert: { message in
//                            self.showAlert(message: message)
//                        })
//                    }
//                }) {
//                    Text("Start Task")
//                        .padding()
//                        .background(Color.blue)
//                        .foregroundColor(.white)
//                        .cornerRadius(10)
//                }
//                .disabled(isLoading) // 如果正在加载，按钮不可用
//                
//                // 弹框显示
//                .alert(isPresented: $showAlert) {
//                    Alert(title: Text("Task Status"), message: Text("Task Completed!"), dismissButton: .default(Text("OK")))
//                }
//            }
//            .padding()
//        }
//
//        // 异步任务
//        func performAsyncTask(progress: @escaping (Double) -> Void, showAlert: @escaping (String) -> Void) async {
//            isLoading = true
//            progress(0.0) // 初始化进度为 0
//            
//            // 模拟任务过程
//            for i in 1...100 {
//                try? await Task.sleep(nanoseconds: 100_000_000) // 模拟工作延迟
//                let currentProgress = Double(i)
//                progress(currentProgress) // 更新进度
//                
//                if i == 100 {
//                    showAlert("Task Completed!") // 完成时显示弹框
//                }
//            }
//            
//            isLoading = false
//        }
//
//        // 弹框显示函数
//        func showAlert(message: String) {
//            self.showAlert = true
//        }
//    }


#Preview {
    TestSwiftUIView()
}
